home *** CD-ROM | disk | FTP | other *** search
/ Pascal Super Library / Pascal Super Library (CW International)(1997).bin / MATH / NRPAS13 / SPLIN2.DEM < prev    next >
Text File  |  1991-04-29  |  968b  |  48 lines

  1. PROGRAM d3r13(input,output);
  2. (* driver for routine SPLIN2 *)
  3. CONST
  4.    m=10;
  5.    n=10;
  6. TYPE
  7.    glnarray = ARRAY [1..n] OF real;
  8.    glmbyn = ARRAY [1..m,1..n] OF real;
  9. VAR
  10.    f,ff,x1x2,xx1,xx2 : real;
  11.    i,j : integer;
  12.    x1,x2 : glnarray;
  13.    y,y2 : glmbyn;
  14.  
  15. (*$I MODFILE.PAS *)
  16. (*$I SPLINT.PAS *)
  17.  
  18. (*$I SPLINE.PAS *)
  19.  
  20. (*$I SPLIE2.PAS *)
  21.  
  22. (*$I SPLIN2.PAS *)
  23.  
  24. BEGIN
  25.    FOR i := 1 to m DO BEGIN
  26.       x1[i] := 0.2*i
  27.    END;
  28.    FOR i := 1 to n DO BEGIN
  29.       x2[i] := 0.2*i
  30.    END;
  31.    FOR i := 1 to m DO BEGIN
  32.       FOR j := 1 to n DO BEGIN
  33.          x1x2 := x1[i]*x2[j];
  34.          y[i,j] := x1x2*exp(-x1x2)
  35.       END
  36.    END;
  37.    splie2(x1,x2,y,m,n,y2);
  38.    writeln('x1':9,'x2':12,'splin2':14,'actual':12);
  39.    FOR i := 1 to 10 DO BEGIN
  40.       xx1 := 0.1*i;
  41.       xx2 := sqr(xx1);
  42.       splin2(x1,x2,y,y2,m,n,xx1,xx2,f);
  43.       x1x2 := xx1*xx2;
  44.       ff := x1x2*exp(-x1x2);
  45.       writeln(xx1:12:6,xx2:12:6,f:12:6,ff:12:6)
  46.    END
  47. END.
  48.